package com.ruoyi.web.controller.campadmin;

import com.ruoyi.campadmin.domain.CaVenueRentalPhoto;
import com.ruoyi.campadmin.service.ICaVenueRentalPhotoService;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.PageDomain;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.IdList.idList;
import io.lettuce.core.dynamic.annotation.Param;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import com.ruoyi.campadmin.domain.CaVenueRental;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
 * @Description  
 * @author kemonvvv
 * @Date 2023-06-05 
 */
@RestController
@RequestMapping("campadmin/caVenueRentalPhoto")
public class CaVenueRentalPhotoController extends BaseController {

    @Resource
    private ICaVenueRentalPhotoService caVenueRentalPhotoService;
    /**
     * 通过全查询
     *  params是用若依的特殊处理过的，不能直接用url去测试，只能用若依的主键写代码去测试
     */
    @PreAuthorize("@ss.hasPermi('campadmin:caVenueRentalPhoto:query')")
    @PostMapping("/getCaVenueRentalPhotoPage")
    public AjaxResult getCaVenueRentalPhotoPage(@RequestBody PageDomain pageDomain,@RequestBody CaVenueRentalPhoto caVenueRentalPhoto ,@RequestBody CaVenueRental caVenueRental) {
        Object data = caVenueRentalPhotoService.getCaVenueRentalPhotoPage(pageDomain, caVenueRentalPhoto, caVenueRental);
        return AjaxResult.success(data);
    }

    /**
     * 通过查询全部
     */
    @PreAuthorize("@ss.hasPermi('campadmin:caVenueRentalPhoto:query')")
    @PostMapping("/getCaVenueRentalPhotoList")
    public AjaxResult getCaVenueRentalPhotoList() {
        Object data = caVenueRentalPhotoService.getCaVenueRentalPhotoList();
        return AjaxResult.success(data);
    }
    
    /**
     * 通过id查询
     */
    @PreAuthorize("@ss.hasPermi('campadmin:caVenueRentalPhoto:query')")
    @PostMapping("/getCaVenueRentalPhotoById")
    public AjaxResult getCaVenueRentalPhotoById(@RequestBody Map<String,Long> idMap) {
        Object data = caVenueRentalPhotoService.getCaVenueRentalPhotoById(idMap.get("id"));
        return AjaxResult.success(data);
    }

    /**
     * 添加
     */
    @PreAuthorize("@ss.hasPermi('campadmin:caVenueRentalPhoto:add')")
    @PostMapping("/insertCaVenueRentalPhoto")
    public AjaxResult insertCaVenueRentalPhoto(@RequestBody CaVenueRentalPhoto caVenueRentalPhoto) {
        Object data = caVenueRentalPhotoService.insertCaVenueRentalPhoto(caVenueRentalPhoto);
        return AjaxResult.success(data);
    }

    /**
     * 更新
     */
    @PreAuthorize("@ss.hasPermi('campadmin:caVenueRentalPhoto:edit')")
    @PostMapping("/updateCaVenueRentalPhoto")
    public AjaxResult updateCaVenueRentalPhoto(@RequestBody CaVenueRentalPhoto caVenueRentalPhoto) {
        Object data = caVenueRentalPhotoService.updateCaVenueRentalPhotoById(caVenueRentalPhoto);
        return AjaxResult.success(data);
    }

    /**
     * 删除
     */
    @PreAuthorize("@ss.hasPermi('campadmin:caVenueRentalPhoto:remove')")
    @PostMapping("/deleteCaVenueRentalPhotoByIdList")
    public AjaxResult deleteCaVenueRentalPhotoByIdList(@RequestBody idList idList) {
        Object data = caVenueRentalPhotoService.deleteCaVenueRentalPhotoByIdList(idList.getIdList());
        return AjaxResult.success(data);
    }

}
